﻿using System;
using System.Collections.Generic;
using System.Text;

namespace Pixysoft.Framework.Noebe.MemoryCaches
{
    public interface ICacheSetting
    {
        /// <summary>
        /// 配置名称
        /// </summary>
        string SettingName { get;set;}

        /// <summary>
        /// 默认shallow cache
        /// </summary>
        CacheMode CacheMode { get;set;}

        /// <summary>
        /// million 级别的超时设置 默认 -1 表示永远不更新
        /// </summary>
        int TimeSpan { get;set;}

        /// <summary>
        /// 默认300
        /// </summary>
        int MaxCapacity { get;set;}

        /// <summary>
        /// 设置当前配置下的noebemanager
        /// </summary>
        /// <param name="manager"></param>
        void SetManager(INoebeManager manager);

        /// <summary>
        /// 获取配置的manager
        /// </summary>
        INoebeManager GetManager();
    }
}
